前言:
前幾天針對流程部分進行了構想,由畫面去延伸,從前端到後端建置流程中需要做的功能有哪些。這樣不僅讓我清>楚知道具體要做的事情,使專案推進更順利,也讓整個網站設計架構更清晰。
接下來,我覺得不急著開專案撰寫程式,前面的基礎知識了解掌握一下也是滿重要的。這一次我想要透過之前一直想學習的 GraphQL 當作後端應用,那我先從最基本的前端要跟後端 API 拿資料開始了解。
Apollo GraphQL Server 基本建置
首先,我使用的是由 Node.js 的一個套件 apollo-server
架設的一個服務。它在建置 API 時有分兩種操作:Query 和 Mutation。相較於 REST 中的 GET、POST、PUT、DELETE,可以理解成 GET 就是 Query,其餘的操作都是 Mutation。
安裝 Apollo Server
npm install apollo-server graphql
建立基本的 Apollo Server
const { ApolloServer, gql } = require('apollo-server');
// 定義 Schema
const typeDefs = gql`
type Query {
hello: String
}
`;
// 定義 Resolvers
const resolvers = {
Query: {
hello: () => 'Hello world!',
},
};
// 建立 Apollo Server
const server = new ApolloServer({ typeDefs, resolvers });
// 啟動 Server
server.listen().then(({ url }) => {
console.log(`Server ready at ${url}`);
});
從上述可以知道,如果後續要開一條API給前端,步驟是: